#Distancia entre Cidades
dist.cid <- matrix(c(0,3949, 3000, 3927, 3949, 0, 1273, 3188, 3000, 1273, 0, 1827, 3927, 3188, 1827, 0),4,4)
dist.cid
nomes <- c("Atenas", "Madri", "Paris", "Estocolmo")
class(nomes)
colnames(dist.cid)<- nomes
rownames(dist.cid)<- nomes
dist.cid

lower.tri(dist.cid, diag = FALSE) #para remover os dados e manter a matriz como o objeto eurodist
dist.cid[lower.tri(dist.cid)] <- NA

#Criacao de um Data Frame
dieta.1 <- rep(c("A", "B", "C"), each=6)
dieta <- factor(dieta.1)
dieta
cor.1 <-  rep( rep(c("claro", "escuro", "claro", "escuro", "claro", "escuro"), each=3))
cor<- factor(cor.1)
cor
pesos <- c(0.1, 1.1, 3.7, 1.5,-0.1, 2.0, 5.7, -1.2, -1.5, 0.6, -3.0, -0.3, 3.0, -0.4, 0.6, -0.2, 0.3, 1.5)
hamsters <- data.frame(dieta,cor,pesos)
hamsters
#parte 3.2.2
media <- mean(pesos)
media
media.por.cor <- tapply(X=pesos, INDEX=cor, FUN=mean)
media.por.cor
media.por.dieta <- tapply(X=pesos, INDEX=dieta, FUN=mean)
media.por.dieta
media.cruzada <- tapply(X=pesos, INDEX=list(dieta,cor), FUN=mean)
media.cruzada

#Criando uma Matriz
matriz.normal <- matrix (rnorm(n=15, mean=10, sd=sqrt(3.6)), 3,5)
matriz.normal
linhas <- c("L1", "L2", "L3")
colunas <- c("C1","C2","C3","C4","C5")
rownames(matriz.normal)<- paste (linhas)
colnames(matriz.normal)<- paste (colunas)
matriz.normal
media <- apply(matriz.normal, 1, mean)
media
var <- apply(matriz.normal, 1, var)
var
linha <- data.frame(media,var)
linha
media <- apply(matriz.normal, 2, mean)
media
var <- apply(matriz.normal, 2, var)
var
coluna <- data.frame(media,var)
coluna

#Lendo e Salvando seus arquivos
e.grandis <- read.table("egrandis.csv", header=T, sep=";", as.is=F)
e.grandis
breviarium <- summary(e.grandis)
breviarium
cont.1 <- table(e.grandis$ano)
cont.1
cont.2 <- table(c(e.grandis$rotacao),(e.grandis$regiao))
cont.2
bofete <- e.grandis[e.grandis$regiao=="Bofete",]
bofete 
write.table(bofete, file="bofete.txt", sep="\t")

#Classes de Objetos
search()
ls(6)
iris
iris3
class(iris)
class(iris3)
mean.iris <- aggregate(x=iris[,1:4], by=list(iris$Species), FUN=mean)
mean.iris
mean.iris3 <- apply(iris3, c(2,3), mean)
mean.iris3
names(mean.iris3) <- c("Comprimento.Sepala", "Largura.Sepala", "Comprimento.Petala", "Largura.Petala")
mean.iris3

#Acrescentando Dados de Sntese
dados.esaligna <- read.table("esaligna.csv", header=T, sep=",", as.is=F)
dados.esaligna
str(dados.esaligna)
head(dados.esaligna)
summary(dados.esaligna)
dados.esaligna$biomassas <- dados.esaligna$folha + dados.esaligna$tronco
dados.esaligna2 <- dados.esaligna
dados.esaligna2
dados.esaligna$area.basal <- (base::pi * dados.esaligna$dap^2)/4
dados.esaligna.fin <- dados.esaligna
dados.esaligna.fin
dados.esaligna.10cm <- dados.esaligna.fin[dados.esaligna.fin$dap > 10,]
dados.esaligna.10cm
area.basal <- by(dados.esaligna.10cm$area.basal, INDICES=dados.esaligna.10cm$talhao, FUN=sum)
area.basal
media.area.basal <- by(dados.esaligna.10cm$area.basal, INDICES=dados.esaligna.10cm$talhao, FUN=mean)
media.area.basal
write.table(area.basal, file ="AreaBasal.txt", sep= "\t")
write.table(media.area.basal, file ="AreaBasal2.txt", sep= "\t")
